ホームに戻る
出典 :
型文字 - Visual Basic | Microsoft Learn
目次 :

識別子の型文字

変数、または定数の宣言時にデータ型を指定するために「型文字」を使用できる。
型文字は識別子の直後に付与するが、型文字自体は識別子(変数名、定数名)には含まれない。
例えば、型文字を用いた宣言文
Dim L%
は型を明示的に指定した
Dim L As Integer
と等価で、変数名は L である。

以下に使用できる型文字の一覧を示す。下表に含まれない型( Boolean など)には識別子の型文字が存在しない。
識別子の型文字 記述例
Integer % Dim L%
Long & Dim M&
Decimal @ Const W@ = 37.5
Single ! Dim Q!
Double # Dim X#
String $ Dim V$ = "Secret"

リテラルの型文字

リテラルの末尾に付与することで、型を強制的に固定できる。
リテラルの型文字 記述例
Short S I = 347S
Integer I
%
J = 347I
J = 347%
Long L
&
K = 347L
K = 347&
Decimal D
@
X = 347D
X = 347@
Single F
!
Y = 347F
Y = 347!
Double R
#
Z = 347R
Z = 347#
UShort US L = 347US
UInteger UI M = 347UI
ULong UL N = 347UL
Char C Q = "."C

既定のリテラル型

型を明示しない場合、リテラルの値によってデータ型が決まる。
形式 既定の型
整数( Integer に格納可能) Integer 2147483647
整数( Integer の範囲外) Long 2147483648
小数部のある数値 Double 1.2
二重引用符で囲まれている String "A"
ナンバーサインで囲まれている Date #5/17/1993 9:32 AM#

16進数、2進数、8進数のリテラル

通常、整数リテラルは10進数として解釈されるが、プレフィックスを付与することで基数を変更して表現できる。
「リテラルの型文字」を併用できる。
基数 プレフィックス 記述例
16進数 &H &HFFFF
2進数 &B &B01111100
8進数 &O &O077

アンダースコアによる補助表現

Visual Basic 2017以降では、グループ区切り記号としてアンダースコア( _ )を使用して桁数を判別しやすくできる。
' 2進数を8ビットずつのグループに区切る Dim number As Integer = &B00100010_11000101_11001111_11001101
またVisual Basic 15.5以降では、プレフィックスと数値との間にアンダースコアを使用できる。
但し、この場合はプロジェクトファイル(VBPROJ)に以下の記述を追加する必要がある。
<PropertyGroup> <LangVersion>15.5</LangVersion> </PropertyGroup>
Dim number As Integer = &H_C305_F860